// package com.johson.covid19server.util;

// import lombok.extern.slf4j.Slf4j;
// import org.apache.ibatis.io.Resources;
// import org.apache.ibatis.session.SqlSession;
// import org.apache.ibatis.session.SqlSessionFactory;
// import org.apache.ibatis.session.SqlSessionFactoryBuilder;

// import java.io.IOException;
// import java.io.Reader;

// /**
//  * MybatisUtil工具类，创建全局唯一的SqlSessionFactory对象
//  * */

// @Slf4j
// // @Configuration
// public class MybatisUtil {
//     //利用static（静态）属于类不属于对象，且全局唯一，static属性本身就属于全局唯一
//     private static SqlSessionFactory sqlSessionFactory = null;
//     //利用静态块在初始化时实例化sqlSessionFactory
//     static {
//         log.info("MybatisUtil enter");
//         System.out.println("MybatisUtil enter");
//         Reader reader = null;
//         try {
//             reader = Resources.getResourceAsReader("mybatis-config.xml");
//         } catch (IOException e) {
//             e.printStackTrace();
//             //初始化遇到错误时，将异常抛给调用者
//             throw new ExceptionInInitializerError(e);
//         }
//         sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
//     }

//     //定义返回SqlSession对象的方法
//     public static SqlSession openSession(){
//         return sqlSessionFactory.openSession();
//     }
    
//     //释放SqlSession对象
//     public static void closeSession(SqlSession session){
//         if (session != null) {
//             session.close();
//         }
//     }
// }